package com.diaohw.module.system.obj.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;
import java.util.List;

/**
 * 角色 DTO
 *
 * @author D-Hw
 * @since 2024-07-05
 */
@Data
@Accessors(chain = true)
@Schema(name = "Role", description = "角色 DTO")
public class RoleVo implements Serializable {


    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @Schema(description = "ID")
    private String id;

    /**
     * 角色名称
     */
    @Schema(description = "角色名称")
    private String roleName;

    /**
     * 角色code
     */
    @Schema(description = "角色code")
    private String roleCode;

    /**
     * 角色类型;0：功能角色， 1：数据角色
     */
    @Schema(description = "角色类型;0：功能角色， 1：数据角色")
    private Integer roleType;

    /**
     * 状态;0：禁用，1：启用
     */
    @Schema(description = "状态;0：禁用，1：启用")
    private Integer state;

    /**
     * 备注
     */
    @Schema(description = "备注")
    private String remark;

    /**
     * 菜单ID
     */
    @Schema(description = "菜单ID")
    private List<String> menuId;

    /**
     * 权限ID
     */
    @Schema(description = "权限ID")
    private List<String> permissionId;

}
